﻿//StarLine 秀曲线图形
//vesion 1.0
//author 夏天的树人

package org.summerTree.graphics
{
	import flash.geom.Point;

	public class BeautifulCurve extends Base 
	{

		private var nodes:Array=new Array();
	
		//private var LineColor:uint=0x000000; 
		public function BeautifulCurve()
		{
			//init();
		}		
		//private function init():void
//		{
//			this.graphics.lineStyle(1,color);//定义画笔粗糙和颜色			
//		}
		
		override public function clone():*
		{
			return new BeautifulCurve();
		}
		
							
		//创建图案
		/* radius 半径
		 * n:分多少份，以360度为计算
		 *segment_num 直线分成的段数单位数目
		 *
		 */
		public function CreatBeautifulCurve(radius:Number,n:int,segment_num:int):void
		{					
		    this.graphics.lineStyle(1,color);//定义画笔粗糙和颜色	
			var angle:Number=-2*Math.PI/n;
			if(segment_num==0) return;
			else
			{
			  var len:Number=radius/segment_num;
			}
			
			for (var i:int=0; i<n+1; i++)
			{
				nodes[i]=new Array();
				for (var j:int=0; j<segment_num; j++)
				{   				   
				    var point:Point=new Point(j*len*Math.cos(angle*i),j*len*Math.sin(angle*i));
				    nodes[i][j]=point;
					this.graphics.moveTo(j*len*Math.cos(angle*i),j*len*Math.sin(angle*i));					 
				    if(i==0)
				    this.graphics.lineTo((segment_num-j)*len,0);
					else
					{
						 this.graphics.lineTo(nodes[i-1][segment_num-1-j].x,nodes[i-1][segment_num-1-j].y);
					}
				}
			}
		}
		////设置颜色
//		public function set color(value:uint):void
//		{
//			this.LineColor=value;
//		}
//		//获取颜色
//		public function get color():uint
//		{
//			return this.LineColor;
//		}
				
		//public function clear():void
//		{
//                this.graphics.clear();
//		}
	}
}
 